<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:p="http://primefaces.org/ui">
<h:head>

	<style type="text/css">
.ui-layout-north {
	z-index: 20 !important;
	overflow: visible !important;;
}

.ui-layout-north .ui-layout-unit-content {
	overflow: visible !important;
}

.ui-widget {
	font-size: 9px !important;
}

.size {
	width: 650px;
	position: relative;
	left: 27%;
	top: 10%;
}

.tabela {
	width: 750px;
}
</style>

	<title>Cadastro de Amostra</title>
</h:head>

<h:body>

	<ui:decorate template="/templateBase.xhtml">

		<ui:define name="center">
			<p:growl id="growl" life="3000" autoUpdate="true" />

			<h:form prependId="false" id="formCadastroAmostra">
				<p:hotkey bind="f2" oncomplete="dlg.show()"
					actionListener="#{amostraBacking.carregarPropriedade}"
					update=":formPesquisa:pesquisaPropriedade" process="@all"
					immediate="true" />

				<br />
				<br />
				<br />
				<br />

				<p:panel header="Cadastro de Amostra" styleClass="size"
					toggleable="true"
					footer="SIGLAS - Sistema de Gerenciamento de Laboratório de Análise de Solo"
					id="panelAmostra" widgetVar="panelAmostra">
					<br />

					<h:outputText value="Propriedade:" />

					<h:panelGrid columns="3">

						<p:inputText readonly="true" size="50" id="txtPropriedade"
							value="#{amostraBacking.propriedadeSelecionada.nome}" />
						<p:commandButton value="F2" icon="ui-icon-search"
							oncomplete="dlg.show()"
							actionListener="#{amostraBacking.carregarPropriedade}"
							update=":formPesquisa:pesquisaPropriedade" process="@all"
							immediate="true" />
					</h:panelGrid>

					<div align="right">
						<p:commandButton value="Adicionar"
							onclick="dlgCadastroNovaAmostra.show()" icon="ui-icon-plus" />
					</div>
					<br />
					<p:dataTable>
						<p:column headerText="ID">
							<h:outputText />
						</p:column>

						<p:column headerText="Descrição">
							<h:outputText />
						</p:column>

						<p:column headerText="Vegetação">
							<h:outputText />
						</p:column>

						<p:column headerText="Topografia">
							<h:outputText />
						</p:column>

						<p:column headerText="Gleba">
							<h:outputText />
						</p:column>
					</p:dataTable>


				</p:panel>

				<p:dialog id="confirmaNova" widgetVar="dlgNova"
					header="Cadastrar nova amostra?" closable="true" width="230"
					resizable="false" showEffect="clip" hideEffect="clip">
					<div align="center">
						<h:outputText
							value="Deseja cadastrar nova amostra para a mesma propriedade?" />
						<h:panelGrid columns="2">
							<p:commandButton value="Sim" onsuccess="dlgNova.hide()"
								ajax="false" update=":formCadastroAmostra" process="@all"
								action="#{amostraBacking.reset}" />

							<p:commandButton value="Não"
								action="#{amostraBacking.resetPropriedade}" ajax="false"
								onclick="dlgNova.hide()" update=":formCadastroAmostra" />

						</h:panelGrid>
					</div>
				</p:dialog>

			</h:form>
			<h:form prependId="false" id="formPesquisa">
				<p:dialog id="pesquisaPropriedade" widgetVar="dlg"
					appendToBody="true" header="Pesquisar Propriedade" closable="true"
					height="400" width="400" resizable="false" showEffect="clip"
					hideEffect="clip">

					<p:dataTable var="p" value="#{amostraBacking.listaPropriedade}"
						rows="10" widgetVar="propriedadeTabela" paginator="true"
						id="tabelaPropriedade"
						emptyMessage="Nenhum registro foi encontrado, tente novamente!">

						<h:outputText value="Propriedades Cadastradas" />

						<p:column headerText="Nome Propriedade" filterBy="#{p.nome}">
							<h:outputText value="#{p.nome}" />
						</p:column>

						<p:column headerText="Proprietário" filterBy="#{p.pessoa.nome}">
							<h:outputText value="#{p.pessoa.nome}" />
						</p:column>

						<p:column>
							<f:facet name="header">
								<h:outputText value="Ações" />
							</f:facet>

							<p:commandButton value="Selecionar"
								update=":formCadastroAmostra:txtPropriedade"
								oncomplete="dlg.hide()">
								<f:setPropertyActionListener
									target="#{amostraBacking.propriedadeSelecionada}" value="#{p}" />
							</p:commandButton>
						</p:column>

					</p:dataTable>
				</p:dialog>


				<p:dialog id="confirmaDelete" widgetVar="dlgDelete"
					header="Deletar Registro" closable="true" width="230"
					resizable="false" showEffect="clip" hideEffect="clip">
					<div align="center">
						<h:outputText value="Deseja realmente excluir esse registro?" />
						<h:panelGrid columns="2">
							<p:commandButton value="Sim" onsuccess="dlgDelete.hide()"
								actionListener="#{amostraBacking.delete}"
								update=":formCadastroAmostra" process="@all" immediate="true" />
							<p:commandButton value="Não" onclick="dlgDelete.hide()" />
						</h:panelGrid>
					</div>
				</p:dialog>


				<p:dialog widgetVar="dlgCadastroNovaAmostra" appendToBody="true"
					footer="SIGLAS - Sistema de Gerenciamento de Laboratório de Análise de Solos"
					hideEffect="clip" showEffect="clip" header="Nova Amostra"
					width="550" height="400">
					<h:form>
						<br />
						<h:panelGrid columns="2">

							<h:outputText value="Responsável pela colheita: " />
							<p:inputText size="50" maxlength="50"
								value="#{amostraBacking.amostraSalvar.responsavel}" />

							<h:outputText value="Cultura a ser adubada: " />
							<p:inputText size="50" maxlength="50"
								value="#{amostraBacking.amostraSalvar.cultura}" required="true"
								requiredMessage="Informe a cultura a ser adubada!" />

							<h:outputText value="Idade da Amostra (Mês):" />
							<p:spinner id="spinnerStep"
								value="#{amostraBacking.amostraSalvar.idade}" stepFactor="1"
								max="48" min="0" size="6" />


							<h:outputText value="Profundidade:" />
							<p:spinner id="spinnerProf"
								value="#{amostraBacking.amostraSalvar.profundidade}"
								stepFactor="0.01" min="0" max="2" maxlength="3" size="6" />

							<h:outputText value="Data de Colheita: " />
							<p:calendar value="#{amostraBacking.amostraSalvar.dataDaAmostra}"
								required="true" requiredMessage="Informe a data da amostra!" />


							<h:outputText value="Vegetação: " />
							<p:selectOneMenu
								value="#{amostraBacking.codigoVegetacaoSelecionada}"
								effect="fade" required="true"
								requiredMessage="Informe o tipo de vegetação!">
								<f:selectItem itemLabel="Selecionar" itemDisabled="true" />
								<f:selectItems value="#{amostraBacking.listaVegetação}" />
							</p:selectOneMenu>
							<h:outputText value="Topografia: " />
							<p:selectOneMenu
								value="#{amostraBacking.codigoTopografiaSelecionada}"
								effect="fade" required="true"
								requiredMessage="Informe a topografia!">
								<f:selectItem itemLabel="Selecionar" itemDisabled="true" />
								<f:selectItems value="#{amostraBacking.listaTopografia}" />
							</p:selectOneMenu>
							<h:outputText value="Gleba: " />
							<p:inputText value="#{amostraBacking.amostraSalvar.gleba}"
								required="true" requiredMessage="Informe a gleba da amostra!" />
							<h:outputText value="Observação: " />
							<p:inputTextarea rows="5" cols="50" counter="counter"
								maxlength="100" counterTemplate="{0} caracteres restantes."
								autoResize="false"
								value="#{amostraBacking.amostraSalvar.observacao}" />
							<h:outputText id="counter" />
						</h:panelGrid>
						<br />
						<p:separator />
						<br />
						<div align="center">
							<h:panelGrid columns="2">
								<p:commandButton value="Salvar"
									action="#{amostraBacking.salvar}" oncomplete="dlgNova.show()"
									icon="ui-icon-disk" />
								<p:commandButton action="#{amostraBacking.reset}"
									value="Cancelar" icon="ui-icon-cancel" />
							</h:panelGrid>
						</div>

					</h:form>
				</p:dialog>


			</h:form>




		</ui:define>
	</ui:decorate>

</h:body>
</html>